/*
   链式队列实现如下功能：
   用户从键盘输入整数，程序将其入队，
   用户输入字母，程序将队头元素出队，并在每一次出队和入队之后打印队列元素
 */


#include "linkqueue.h"


int main(void)
{
	link_pqueue q; //保存front和rear指针的对象
	datatype tmp;
	list_pnode  new;
	int ret;

	//初始化队列
	init_linkqueue(&q);

	while(1){
		new = (list_pnode)malloc(sizeof(list_node));
		if(NULL == new){
			perror("malloc");
			exit(1);
		}
		printf("请输入一个整数入队,非整数出队\n");
		ret = scanf("%d",&new->data);
		if(ret == 1){ //输入为整数 ---入队
			in_linkqueue(q,new);
			show_linkqueue(q);
		}else{ //输入为字符-出队
			out_linkqueue(q,&tmp);
			printf("出队数据:%d\n",tmp);
			tmp = -1;
			show_linkqueue(q);
			while(getchar() != '\n');
		}
	}


	return 0;
}
